using System;
using System.Data;

namespace Caramel
{
	public interface IUnitOfWork : IDisposable
	{
		Guid ID { get; }

		string Name { get; }

		bool WasCommitted { get; }
		
		bool WasRolledBack { get; }

		void Commit();

		void Rollback();

		void Evict(object entity);
	}
}
